Add Angular samples and align port/HTTPS across frameworks#20
Merged
Conversation
- Add Angular login-pkce and token-refresh samples using angular-auth-oidc-client - Add ts: section to placeholder-map.yaml for Angular environment.* patterns - Add env_file field to manifest for per-framework config file format - Update aggregate script to include env_file and strip framework-specific run_command - Update validate script to support per-framework config file (env or environment.ts) - Update CI test-js.yml: broaden trigger paths and check for test script - Add Dependabot entries for Angular samples - Align all samples on port 4250 with HTTPS - Enable HTTPS in React Vite config via @vitejs/plugin-basic-ssl - Standardize on yarn start across all samples - Add sign out button to React token-refresh - Add post_logout_redirect_uri to React token-refresh manifest and env Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR expands the sample “snippets + manifests” system to support Angular (in addition to React), while standardizing runtime details (HTTPS + port 4250 + yarn start) and updating validation/aggregation tooling so ciam-core can generate framework-appropriate config files.
Changes:
- Add Angular sample implementations for
spa_login_pkceandspa_token_refresh(plus corresponding snippet steps). - Add
env_fileto framework manifests and update validation/aggregation scripts to support framework-specific config example formats. - Standardize React samples on HTTPS/port 4250 and
yarn start, and add sign-out +post_logout_redirect_urito token refresh.
Reviewed changes
Copilot reviewed 52 out of 59 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| snippets.json | Adds Angular snippet steps; updates React run commands and token-refresh sign-out/config. |
| snippet-manifest.yaml | Updates aggregated manifest to include Angular + env_file and new config rows. |
| scripts/validate-structure.ts | Validates per-framework config example file based on env_file. |
| scripts/aggregate-manifests.ts | Aggregates manifests with env_file, strips run_command, and orders frameworks. |
| samples/react/token-refresh/yarn.lock | Adds Vite basic SSL plugin dependency. |
| samples/react/token-refresh/vite.config.ts | Enables HTTPS (basic SSL), adds POST_LOGOUT_URI, sets port 4250. |
| samples/react/token-refresh/src/App.tsx | Adds post_logout_redirect_uri and a sign-out button. |
| samples/react/token-refresh/package.json | Renames dev script to start. |
| samples/react/token-refresh/README.md | Updates run instructions for yarn start and https://localhost:4250. |
| samples/react/token-refresh/.env.example | Updates sample issuer domain, HTTPS redirect URI, adds post-logout URI. |
| samples/react/manifest.yaml | Adds env_file and standardizes run_command; adds post-logout config row. |
| samples/react/login-pkce/yarn.lock | Adds Vite basic SSL plugin dependency. |
| samples/react/login-pkce/vite.config.ts | Enables HTTPS (basic SSL) and sets port 4250. |
| samples/react/login-pkce/package.json | Renames dev script to start. |
| samples/react/login-pkce/README.md | Updates run instructions for yarn start and https://localhost:4250. |
| samples/react/login-pkce/.env.example | Updates sample issuer domain and HTTPS redirect/post-logout URIs. |
| samples/angular/token-refresh/tsconfig.spec.json | Adds Angular sample TS config for tests. |
| samples/angular/token-refresh/tsconfig.json | Adds base TS + Angular compiler settings for the sample. |
| samples/angular/token-refresh/tsconfig.app.json | Adds app TS config for the sample. |
| samples/angular/token-refresh/src/styles.css | Adds placeholder global styles file. |
| samples/angular/token-refresh/src/main.ts | Bootstraps standalone Angular app. |
| samples/angular/token-refresh/src/index.html | Adds app HTML shell. |
| samples/angular/token-refresh/src/environments/environment.example.ts | Adds framework-specific config example format for Angular. |
| samples/angular/token-refresh/src/app/app.ts | Implements token refresh UI and token-expiry display logic. |
| samples/angular/token-refresh/src/app/app.spec.ts | Adds unit tests for token-refresh sample. |
| samples/angular/token-refresh/src/app/app.config.ts | Configures angular-auth-oidc-client with refresh tokens. |
| samples/angular/token-refresh/package.json | Adds Angular sample dependencies and scripts (ng serve on 4250 SSL). |
| samples/angular/token-refresh/angular.json | Adds Angular project/build/test config. |
| samples/angular/token-refresh/README.md | Adds Angular token-refresh setup/run docs. |
| samples/angular/token-refresh/.yarnrc.yml | Adds Yarn configuration for the sample. |
| samples/angular/token-refresh/.prettierrc | Adds Prettier config (single quotes, HTML parser override). |
| samples/angular/token-refresh/.gitignore | Ignores generated artifacts and src/environments/environment.ts. |
| samples/angular/token-refresh/.editorconfig | Adds editor defaults for the sample. |
| samples/angular/manifest.yaml | Adds Angular framework manifest with scenarios and env_file. |
| samples/angular/login-pkce/tsconfig.spec.json | Adds Angular sample TS config for tests. |
| samples/angular/login-pkce/tsconfig.json | Adds base TS + Angular compiler settings for the sample. |
| samples/angular/login-pkce/tsconfig.app.json | Adds app TS config for the sample. |
| samples/angular/login-pkce/src/styles.css | Adds placeholder global styles file. |
| samples/angular/login-pkce/src/main.ts | Bootstraps standalone Angular app. |
| samples/angular/login-pkce/src/index.html | Adds app HTML shell. |
| samples/angular/login-pkce/src/environments/environment.example.ts | Adds framework-specific config example format for Angular. |
| samples/angular/login-pkce/src/app/app.ts | Implements PKCE login/logout UI and auth-state rendering. |
| samples/angular/login-pkce/src/app/app.spec.ts | Adds unit tests for PKCE sample. |
| samples/angular/login-pkce/src/app/app.config.ts | Configures angular-auth-oidc-client for PKCE login. |
| samples/angular/login-pkce/package.json | Adds Angular sample dependencies and scripts (ng serve on 4250 SSL). |
| samples/angular/login-pkce/angular.json | Adds Angular project/build/test config. |
| samples/angular/login-pkce/README.md | Adds Angular login PKCE setup/run docs. |
| samples/angular/login-pkce/.yarnrc.yml | Adds Yarn configuration for the sample. |
| samples/angular/login-pkce/.prettierrc | Adds Prettier config (single quotes, HTML parser override). |
| samples/angular/login-pkce/.gitignore | Ignores generated artifacts and src/environments/environment.ts. |
| samples/angular/login-pkce/.editorconfig | Adds editor defaults for the sample. |
| placeholder-map.yaml | Adds ts placeholder patterns for Angular environment.* references. |
| .gitignore | Adds ignore rules intended for Angular environment files. |
| .github/workflows/test-js.yml | Broadens CI trigger paths; changes how “run tests” is detected. |
| .github/dependabot.yml | Adds Dependabot entries for the Angular sample directories. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…tart - prebuild/pretest auto-copy environment.example.ts so CI works - prestart errors with a clear message so users know to copy and configure Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
User-facing yarn build/test stay clean. CI uses build:ci/test:ci which auto-create environment.ts from the example so build doesn't fail. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Decode JWT base64url properly (handle - / _ chars and padding) - Fix indexOf fallback in aggregate-manifests sort (returns -1 not undefined) - Use node to parse package.json scripts in CI workflow (avoid grep false positives) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
spa_login_pkceandspa_token_refreshscenarios usingangular-auth-oidc-clientenv_filefield to manifest so ciam-core can generate the right config format per framework (.envfor React,environment.tsfor Angular)ts:placeholder patterns for Angular'senvironment.*syntaxrun_commandfrom aggregated scenarios (it's framework-specific, lives in snippets.json)@vitejs/plugin-basic-ssl)yarn startacross all samplespost_logout_redirect_uriconfigsamples/**, generic test script check🤖 Generated with Claude Code